<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>FAR_PKF_FLAGS</title>
<meta http-equiv="Content-Type" Content="text/html; charset=utf-8">
<link rel="stylesheet" type="text/css" href="../../styles/styles.css">
<script language="javascript" src='../links.js' type="text/javascript"></script>
</head>

<body>

<h1>FAR_PKF_FLAGS</h1>
<div class=navbar>
<a href="../index.html">main</a> |
<a href="index.html">types and definitions</a>
</div>

<div class=shortdescr>
The members of the <a name="FAR_PKF_FLAGS">FAR_PKF_FLAGS</a> enumeration describe
the state of the shift keys of an event sent to the
<a href="../exported_functions/processkey.html">ProcessKey</a> function.

<table class="cont">
  <tr class="cont"><th class="cont" width="40%">Flag</th><th class="cont" width="60%">Description</th></tr>
  <tr class="cont"><td class="cont" width="40%"><a name="PKF_CONTROL" title="0x00000001">PKF_CONTROL</a></td>
  <td class="cont" width="60%">Ctrl is pressed</td></tr>
  <tr class="cont"><td class="cont" width="40%"><a name="PKF_ALT" title="0x00000002">PKF_ALT</a></td>
  <td class="cont" width="60%">Alt is pressed</td></tr>
  <tr class="cont"><td class="cont" width="40%"><a name="PKF_SHIFT" title="0x00000004">PKF_SHIFT</a></td>
  <td class="cont" width="60%">Shift is pressed</td></tr>
  <tr class="cont"><td class="cont" width="40%"><a name="PKF_PREPROCESS" title="0x00080000">PKF_PREPROCESS</a></td>
  <td class="cont" width="60%">Preprocessing: - FAR passes a "raw" keystroke.<br>
   This flag is applicable <u>only</u> to the <a href="../winapi/virtualkeycodes.html">virtual key code</a>
   (second parameter of the <a href="../exported_functions/processkey.html">ProcessKey</a> function).
  </td></tr>
</table>

<h3>Remarks</h3>
<div class=descr>
<ul><li>Since FAR Manager 1.70 build 2052 keyboard events are sent to the plugins with no exclusions
(refer to the remarks on the <a href="../exported_functions/processkey.html">ProcessKey</a> function).
If the <dfn>PKF_PREPROCESS</dfn> flag is set, plugin may ignore calls to
the <a href="../exported_functions/processkey.html">ProcessKey</a> function. In this case after the input is complete
FAR will form the needed command and pass it to the plugin.<br>
For example, if a user enters "<code>cd ..Enter</code>" in the command line the plugin receives
the sequence "<nobr><code>80043h 80044h 80020h 800BEh 800BEh 8000Dh</code></nobr>" (every
virtual code has the <dfn>PKF_PREPROCESS</dfn> flag set).<br>
The plugin may behave in two ways:
<ol>
<li>process the sequence by itself;
<li>ignore the calls to <a href="../exported_functions/processkey.html">ProcessKey</a> with
<dfn>PKF_PREPROCESS</dfn> set and wait for FAR to call
<a href="../exported_functions/setdirectory.html">SetDirectory</a> with Dir = "..".
</ol>
</li></ul>
</div>


<div class=see>See also:</div><div class=seecont>
<a href="../exported_functions/processkey.html">ProcessKey</a>
</div>

</body>
</html>
